package level02.two;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Map;
import java.util.TreeMap;

/**
 * 使用高效流输入读取上一题保存学生信息的文件，每次读取一行信息。
 * 每读取到一行信息就创建一个学生对象并添加到集合中。
 * 遍历集合打印学生信息到控制台。
 */
public class Test {
    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(new FileReader("stu.txt"));
        //创建一个集合用来装学生
        TreeMap<Integer,String> student = new TreeMap<>();
        String str;
        while ( (str = bufferedReader.readLine()) != null){
            //如果读出来的是空字符串，则跳过
            if (str.trim().isEmpty()) {
                continue;
            }
            try {
                //将读出的字符串用-分割
                String[] split = str.split("-");
                //split[0]为学生学号
                Integer s0 = Integer.parseInt(split[0]);
                //split[1]为学生姓名
                String s1 = split[1];
                student.put(s0,s1);
            } catch (NumberFormatException e) {
                e.printStackTrace();
            }
        }
        for (Map.Entry<Integer, String> entry : student.entrySet()) {
            System.out.println("学号为:"+entry.getKey()+"姓名为:"+entry.getValue());
        }
    }
}
